magiclanternfandomcom-20200223-history
2.0.4 Building ML
Parent: 2.0.4 AJ My intention is to Build n Test ML based on Canon firmware 2.0.4 / 5Dii. My init attempt to build ML in 2010_03 failed on Mac OS X / SnowLeopard. AI's success in porting ML to the 550D has given me hope that I'll succeed this time around. AJ Hardware *MacPro 2 CPU / 8 core / OS X SnowLeopard 10.6.4 *Canon 5d II @ Dry OS 2.0.4 *Kinston 32GB 133X CCF Build instructions that I going to work through *http://magiclantern.wikia.com/wiki/Build_instructions/550D/Ubuntu -> This page mentions that it was no longer needed as summon-arm-toolchain script is portable *http://magiclantern.wikia.com/wiki/Build_instructions -> This is the mail build page BP. *http://magiclantern.wikia.com/wiki/Build_instructions/550D -> Referenced here because AI succeeded in buiding the 550D. [BP550] Activity (I'm a complete novice in this area!) *From BP page: *AJ Mercurial is a distributed Source Code Management Downloaded 1.6.3 from http://mercurial.selenic.com/wiki/Download -> Installed AJ According to http://mercurial.selenic.com/wiki/TutorialInstall hg now activates Mercurial binaries *Run Applications->Utilities->Termnal (Unix Prompt) *hg version -> should show version 1.6.3 is installed *AJ The Clone command syncronises the Mercurial Repository with the one on your machine hg clone https://bitbucket.org/hudson/magic-lantern/ -> added 562 changesets with 1185 changes to 158 files-> 146 files updated *AJ If theres remnants of previous directory -> Rename / delete magic-lantern folder from the Finder. The following are the build instructions from BP. 1) Install or build the arm-elf cross compile environment (gcc 4.3.2) and perl. 2) Update the Makefile $(ARM_PATH) to point to your arm-elf-gcc (arm-linux-gcc will work as well). 3) Run make. There are more warnings than there should be; a good janitor project would be to clean up all of the warnings with explicit typecasts or fixes. AJ I'm not entirely sure how to build the arf-elf. BP550 refers to GCC 4.3.2, however, there is mention of version GCC 4.4.2 in ML firmware development email: -> http://groups.google.com/group/ml-devel/browse_thread/thread/330523445e353ceb Also on the 550D build instructions on BP550 there is also mention of the arf-elf, and a 'tool chain'. So I am Guessing at this point, you have to ignore the instructions from BP, and switch to BP550. . *From BP550 page: *Downloading torrent for Ubuntu virtual machine from http://www.vmware.com/appliances/directory/542303 10.04 Desktop VMware image (1.1 GiB) *Downloaded Vuze from http://www.vuze.com/ -> Installed it. *AJ Ubuntu is a Linux operating system based on Debian GNU/Linux distrubution. Ubuntu Clicked Ubuntu torrent -> downloading in Vuze -> Estimated download time 1hr -> Done Ubuntu Double click on package -> Unzip -> ubuntu1004desktop directory on Desktop *arm-elf-gcc Download the summon-arm-toolchain script (text file) http://github.com/esden/summon-arm-toolchain/raw/master/summon-arm-toolchain to Desktop *Edit scipt using info on BP550 -> Saved to Desktop. AJ I note that there is an option to Parallelize the script. Leaving as the following line in BP550 to increase the chance of it working (My computer has 2xCPUs, but 8 Cores). PARALLEL="-j 3" # Or: PARALLEL="-j 5" for 4 CPUs . *Run Applications->Utilities->Termnal (Unix Prompt) BP550 Get the dependencies. For Debian/Ubuntu, they are: sudo apt-get install flex bison libgmp3-dev libmpfr-dev libncurses5-dev libmpc-dev autoconf texinfo build-essential currently Here! . Next Steps "Run the script (it will take a long time): bash summon-arm-toolchain This will install arm-elf-gcc under ~/arm-toolchain/bin."